1. Field of the Invention
This invention relates generally to processor-based systems, and, more particularly, to capturing error messages in processor-based systems.
2. Description of the Related Art
Businesses may use processor-based systems to perform a multiplicity of tasks. These tasks may include, but are not limited to, developing new software, maintaining databases of information related to operations and management, and hosting a web server that may facilitate communications with customers. To handle such a wide range of tasks, businesses may employ a processor-based system in which some or all of the processors may operate in a networked environment.
Processor-based systems are, however, prone to errors that may compromise the operation of the system. For example, a software package running on a processor may request access to a memory location that may already have been allocated to another software package. Allowing the first program to access the memory location could corrupt the contents of the memory location and cause the second program to fail, so the system may deny the first program access and return a system error message. The first program may then fail, perhaps disrupting the operation of the processor and/or the network. Similarly, disconnected power cables, pulled connection wires, and malfunctioning hardware may also disrupt operation of the system.
An error that interferes with or otherwise adversely affects the operation of the system may limit the ability of the business to perform crucial tasks and may place the business at a competitive disadvantage. For example, if a customer cannot reach the business's web site, they may patronize a different business. The competitive disadvantage may increase the longer the system remains disrupted. Thus, it may be desirable to identify the cause of the error and thereafter fix the error as quickly as possible.
However, it may be difficult to identify the root cause of many errors. For example, the system may comprise dozens of individual processors and each processor may be running one or more pieces of software, including portions of an operating system. The system may further comprise a variety of storage devices like disk drives and input/output (I/O) devices such as printers and scanners. The complexity of the system may be reflected in a bewildering variety of errors that may be produced by components of the system. Furthermore, a single root cause may propagate to other devices and/or software applications in the system and generate a chain of seemingly unrelated errors. Tracing the chain of messages back to the root cause may be a time-consuming task for the system administrator.
Once the root cause has been identified, finding a solution may also be problematic. Select hardware or software applications may each maintain a separate list of solutions to known errors, but the lists may be incomplete or outdated. And even if a solution to an error exists, the system administrator or technician may be obliged to read through many pages of manuals to find the solution.